#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MetaData {
    #[prost(int64, tag="1")]
    pub created_at: i64,
    #[prost(int64, tag="2")]
    pub updated_at: i64,
    #[prost(string, tag="3")]
    pub uuid: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Name {
    #[prost(string, tag="3")]
    pub ug: ::prost::alloc::string::String,
    #[prost(string, tag="1")]
    pub zh: ::prost::alloc::string::String,
    #[prost(message, optional, tag="2")]
    pub meta: ::core::option::Option<MetaData>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Address {
    #[prost(message, optional, tag="4")]
    pub city: ::core::option::Option<Name>,
    #[prost(message, optional, tag="1")]
    pub street: ::core::option::Option<Name>,
    #[prost(message, optional, tag="2")]
    pub location: ::core::option::Option<Location>,
    #[prost(message, optional, tag="3")]
    pub meta: ::core::option::Option<MetaData>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Contact {
    #[prost(string, tag="4")]
    pub phone_number: ::prost::alloc::string::String,
    #[prost(string, tag="1")]
    pub wechat: ::prost::alloc::string::String,
    #[prost(string, tag="2")]
    pub email: ::prost::alloc::string::String,
    #[prost(message, optional, tag="3")]
    pub meta: ::core::option::Option<MetaData>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Person {
    #[prost(message, optional, tag="4")]
    pub name: ::core::option::Option<Name>,
    #[prost(message, optional, tag="1")]
    pub address: ::core::option::Option<Address>,
    #[prost(message, optional, tag="2")]
    pub contacts: ::core::option::Option<Contact>,
    #[prost(message, optional, tag="3")]
    pub meta: ::core::option::Option<MetaData>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Account {
    #[prost(message, optional, tag="4")]
    pub person: ::core::option::Option<Person>,
    #[prost(string, tag="1")]
    pub sign_in_name: ::prost::alloc::string::String,
    #[prost(string, tag="2")]
    pub password: ::prost::alloc::string::String,
    #[prost(message, optional, tag="3")]
    pub meta: ::core::option::Option<MetaData>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Food {
    #[prost(message, optional, tag="3")]
    pub name: ::core::option::Option<Name>,
    #[prost(float, tag="1")]
    pub price: f32,
    #[prost(message, optional, tag="2")]
    pub meta: ::core::option::Option<MetaData>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Restaurant {
    #[prost(message, optional, tag="5")]
    pub owner: ::core::option::Option<Account>,
    #[prost(string, tag="6")]
    pub owner_id: ::prost::alloc::string::String,
    #[prost(message, optional, tag="1")]
    pub address: ::core::option::Option<Address>,
    #[prost(message, optional, tag="2")]
    pub contact: ::core::option::Option<Contact>,
    #[prost(message, optional, tag="3")]
    pub meta: ::core::option::Option<MetaData>,
    #[prost(message, repeated, tag="4")]
    pub foods: ::prost::alloc::vec::Vec<Food>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Location {
    #[prost(float, tag="3")]
    pub latitude: f32,
    #[prost(float, tag="1")]
    pub longitude: f32,
    #[prost(message, optional, tag="2")]
    pub meta: ::core::option::Option<MetaData>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Rider {
    #[prost(message, optional, tag="4")]
    pub user: ::core::option::Option<Account>,
    #[prost(string, tag="5")]
    pub user_id: ::prost::alloc::string::String,
    #[prost(string, tag="1")]
    pub work_number: ::prost::alloc::string::String,
    #[prost(message, optional, tag="2")]
    pub current_location: ::core::option::Option<Location>,
    #[prost(message, optional, tag="3")]
    pub meta: ::core::option::Option<MetaData>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Order {
    #[prost(message, optional, tag="1")]
    pub user: ::core::option::Option<Account>,
    #[prost(string, tag="2")]
    pub user_id: ::prost::alloc::string::String,
    #[prost(message, optional, tag="3")]
    pub restaurant: ::core::option::Option<Restaurant>,
    #[prost(string, tag="4")]
    pub restaurant_id: ::prost::alloc::string::String,
    #[prost(string, repeated, tag="5")]
    pub foods: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
    #[prost(message, optional, tag="6")]
    pub rider: ::core::option::Option<Rider>,
    #[prost(string, tag="7")]
    pub rider_id: ::prost::alloc::string::String,
    #[prost(message, optional, tag="8")]
    pub meta: ::core::option::Option<MetaData>,
    #[prost(bool, tag="9")]
    pub completed: bool,
}
